namespace SimpleServiceBus.EndpointMonitor.Web.Helpers.Flot.FlotOptions
{
    public class FlotGlobalOptions
    {
        public FlotGlobalOptions()
        {
            Legend = new FlotLegendOptions();
            Grid = new FlotGridOptions();
            Xaxis = new FlotAxisOptions();
            Yaxis = new FlotAxisOptions();
            X2axis = new FlotAxisOptions();
            Y2axis = new FlotAxisOptions();
            Selection = new FlotSelectionOptions();
            Crosshair = new FlotCrosshairOptions();
            Lines = new FlotLineSeriesOptions();
            Bars = new FlotBarSeriesOptions();
            Points = new FlotPointSeriesOptions();
            Threshold = new FlotThresholdOptions();
        }

        public FlotLegendOptions Legend { get; private set; }
        public FlotGridOptions Grid { get; private set; }
        
        public FlotAxisOptions Xaxis { get; private set; }
        public FlotAxisOptions X2axis { get; private set; }
        public FlotAxisOptions Yaxis { get; private set; }
        public FlotAxisOptions Y2axis { get; private set; }

        public FlotSelectionOptions Selection { get; private set; }
        public FlotCrosshairOptions Crosshair { get; private set; }

        public FlotLineSeriesOptions Lines { get; private set; }
        public FlotBarSeriesOptions Bars { get; private set; }
        public FlotPointSeriesOptions Points { get; private set; }
        public string[] Colors { get; set; }
        public int? ShadowSize { get; set; }
        public FlotThresholdOptions Threshold { get; private set; }
    }
}